A Software Defined Network (SDN) may be a network where network elements (NEs) such as routers, switches, etc. may be configured and managed with software to enable the simplification of those hardware devices with mostly data forwarding functionality such that commodity computers can be used as NEs, replacing the traditionally expensive and underutilized NEs in the existing network. SDN reduces the need to manually configure and manage such hardware. SDN abstraction may comprise decoupling the NE's control plane from the its data plane, which may result in overall network simplification, virtualization, and the ability to implement remote and/or dynamic NE configuration. SDN decoupling may also allow the control plane and the data plane to operate on different hardware, in different runtime environments, and/or operate using different distribution models. SDN technologies may also support further development and deployment of cloud computing technologies.